package com.css.fxfzypg.manage.building.repository;

import com.css.fxfzypg.manage.building.repository.entity.BuildingEntity;
import com.css.fxfzypg.manage.building.vo.*;
import com.css.fxfzypg.manage.sampling.repository.entity.SamplingEntity;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface BuildingReqository {
    boolean saveBuilding(BuildingEntity buildingEntity);

    Map<String,Object> querySubmitOrNot(String submitFlag, String taskCode, int curPage, int pageSize, String userId);

    boolean updateIsSubmit(Map<String,String> map);

    BuildingEntity queryData(String id);

    boolean modifyData(BuildingEntity buildingEntity);

    Map<String, Object> queryBuildingData(HttpServletRequest request, BuildingParams queryParams, int curPage, int pageSize);

    boolean deleteBuilding(String id);

    List<BuildingEntity> getDataGroupByStructure(String taskCode,String structure);

    List<BuildingEntity> getBuildingSingleData(List<String> idList);

    List<BuildingParams> queryBuildingMap();

    Map<String, Object> getBuildingDataByTeamMembers(HttpServletRequest request, BuildingParams queryParams, int curPage, int pageSize, String userId, List<String> taskCodeList);

    List<BuildingParams> getBuildingDataByTeamMembers(String userId, List<String> taskCodeList);

    Map<String, Object> queryBuildingDataByProvince(BuildingParams queryParams, int curPage, int pageSize, String userId, String provinceId, List<String> taskCodeList);

    List<BuildingParams> queryBuildingDataByProvince(String userId, String provinceId, List<String> taskCodeList);

    List<BuildingEntity> queryBuilding(BuildingParams queryParams);

    List<BuildingEntity> queryBuildingByProvince(BuildingParams queryParams, String userId, String provinceId, List<String> taskCodeList);

    List<BuildingEntity> queryBuildingDataByTeamMembers(BuildingParams queryParams, String userId, List<String> taskCodeList);

    List<BuildingResultVo> queryBuildingData(String taskCode,String province,String city,String county);

    List<BuildingResultVo> queryBuildingData(String province,String city,String county);


    List<BuildingResultVo> queryBuildingData(String samplingId);

    List<BuildingEntityVO> queryBuildingEntityData(String taskCode , String province, String city, String county);

    List<BuildingEntityVO> queryBuildingEntityData(String province, String city, String county,String survey,String type);

    List<BuildingEntity> getByFieldSurveyNameAndTaksCodeAndProvinceId(String dynName, String taskNum, String provinceId);

    Integer countBySurveyNameAndTaksCodeAndProvinceIdAndStructure(String name, String taskNum, String provinceId, String highStructure);

    SamplingEntity getSamplingEntityById(String fieldSurveyId);

    List<GcExcelVo> queryBuilding1(BuildingParams queryParams);

    List<GExcelVo> queryBuilding2(BuildingParams queryParams);

    List<DcgjhntExcelVo> queryBuilding3(BuildingParams queryParams);

    List<ZhExcelVo> queryBuilding4(BuildingParams queryParams);

    List<ZmExcelVo> queryBuilding5(BuildingParams queryParams);

    List<TExcelVo> queryBuilding6(BuildingParams queryParams);

    List<MExcelVo> queryBuilding7(BuildingParams queryParams);

    List<SExcelVo> queryBuilding8(BuildingParams queryParams);

    List<QtExcelVo> queryBuilding9(BuildingParams queryParams);
}
